<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Clientes extends CI_Controller {
     function __construct(){
        parent::__construct();
         //$this->output->nocache();
         $this->load->model('cliente_m');
         $this->load->model('generales_m');
         $this->load->library('form_validation');
         $this->form_validation->set_error_delimiters('<p class="text-error">', '</p>');
      }
      
      /*
       * Presenta el formulario para agregar nuevo cliente
       */
      public function index(){
          $this->load->helper('date');
          $data['title'] = 'Clientes | Nuevo';
          $data['css']= array('style/jquery-ui-1.10.3.custom');
          $data['js']= array('select_anidados','vendor/jquery-ui-1.10.3.custom.min','main_datepicker');
          $combo['pais'] = $this->generales_m->get_paises();
          $datestring = "%Y/%m/%d"; $time = time();
          $combo['hoy'] = mdate($datestring, $time);
          $combo['tcliente'] = $this->generales_m->get_tcliente();
          $data['content'] = $this->load->view('clientes/v_new_clie',$combo,true);
          $this->load->view('template/template-admin',$data);
          }
          
      /*
       * Insertar nuevo cliente
       */    
      public function insert_clie(){
          if ($this->form_validation->run('insertar_cliente') == FALSE){
              $this->index();
           }else{
               
               $nomb_clie = $this->input->post('nomb_clie',TRUE);
               $apel_clie = $this->input->post('apel_clie',TRUE);
               $dni_clie = $this->input->post('dni_clie',TRUE);
               $telf_clie = $this->input->post('telf_clie',TRUE);
               $email_clie = $this->input->post('email_clie',TRUE);
               $cuit_clie = $this->input->post('cuit_clie',TRUE);
               $dire_clie = $this->input->post('dire_clie',TRUE);
               $id_zona = $this->input->post('id_zona',TRUE);
               $id_tclie = $this->input->post('id_tclie',TRUE);
               $fecha_ingreso = $this->input->post('fecha_ingreso');
               $codigo_clie = $this->input->post('codigo_clie');
               $last_clie_id = $this->cliente_m->insert_clie($nomb_clie,$apel_clie,$dni_clie,$telf_clie,$email_clie,$cuit_clie,
                                          $dire_clie,$id_zona,$id_tclie,$fecha_ingreso,$codigo_clie);
               redirect('clientes/viewclie/'.$last_clie_id);
               
               }
          }
          
          
      /*
       * Vista resumen de cliente
       */    
      public function viewclie($id_clie){
            $data['title'] = 'Clientes | Resumen Cliente';
            //$data['menubar'] = $this->load->view('template/menubar','',TRUE);
            $data_clie['clie_data'] = $this->cliente_m->get_clie($id_clie);
            if(!empty($data_clie['clie_data'])){
                $data_clie['id_clie'] = $id_clie;
                $data_clie['mensaje'] = $this->session->flashdata('mensaje');
                $data['content'] = $this->load->view('clientes/v_clie_resume',$data_clie,TRUE);
            }else{
                $data_clie['error'] = 'Se produjo un error, intentelo nuevamente.';
                $data['content'] = $this->load->view('clientes/v_clie_resume',$data_clie,TRUE);
                }
                $this->load->view('template/template-admin',$data);
          }
          
      /*
       * Editar datos del cliente.
       */    
      public function vieweditclie($id_clie){
          $data['js']= array('select_anidados','vendor/bootstrapSwitch');
          $data['css']= array('bootstrap/bootstrapSwitch');
          $data['title'] = 'Clientes | Editar Cliente';
          //$data['menubar'] = $this->load->view('template/menubar','',TRUE);
          $data_clie['id_clie']= $id_clie;
          $data_clie['clie_data'] = $this->cliente_m->get_clie($id_clie);
          if(!empty($data_clie['clie_data'])){
              $data_clie['pais'] = $this->generales_m->get_paises();
              $data['content'] = $this->load->view('clientes/v_clie_edit',$data_clie,TRUE);
          }else{
                $data_clie['error'] = 'Se produjo un error, intentelo nuevamente.';
                $data['content'] = $this->load->view('clientes/v_clie_resume',$data_clie,TRUE);
                }
          $this->load->view('template/template-admin',$data);
      }
       
       /*
        * Guardar cliente editado
        */
       public function update_clie(){
           $id_clie = $this->input->post('id_clie',TRUE);
           if ($this->form_validation->run('actualizar_cliente') == FALSE){
               
               $this->vieweditclie($id_clie);
           }else{
               $nomb_clie = $this->input->post('nomb_clie',TRUE);
               $apel_clie = $this->input->post('apel_clie',TRUE);
               $dni_clie = $this->input->post('dni_clie',TRUE);
               $telf_clie = $this->input->post('telf_clie',TRUE);
               $email_clie = $this->input->post('email_clie',TRUE);
               $cuit_clie = $this->input->post('cuit_clie',TRUE);
               $dire_clie = $this->input->post('dire_clie',TRUE);
               $id_zona = $this->input->post('id_zona',TRUE);
               $estado_clie = $this->input->post('estado_clie');
               $this->cliente_m->update_clie($id_clie,$nomb_clie,$apel_clie,$dni_clie,$telf_clie,$email_clie,$cuit_clie,$dire_clie,$id_zona,$estado_clie);
               redirect('clientes/viewclie/'.$id_clie);
           }
           
       }
       
       /*
        * Listado de clientes
        */
       public function list_clie(){
           $data['js']= array('vendor/jquery.dataTables1.9.4.min','main_datatable');
           $data['css']= array('style/datatable_bootstrap');
           $data['title'] = 'Clientes | Listado';
           $data_clie['lista_clie'] = $this->cliente_m->list_clie();
           $data['content'] = $this->load->view('clientes/v_list_clie',$data_clie,TRUE);
           $this->load->view('template/template-admin',$data);
       }
       
       /*
        * Listado de clientes aplicando filtro
        */
       public function view_filter_clie(){
           $data['js']= array('vendor/jquery.dataTables1.9.4.min','main_datatable','ajax_form');
           $data['css']= array('style/datatable_bootstrap');
           $data['title'] = 'Clientes | Listado x Filtro';
           $combo['tcliente'] = $this->generales_m->get_tcliente();
           $combo['estadocliente'] = $this->generales_m->get_estadoclie();
           $data['content'] = $this->load->view('clientes/v_filter_clie',$combo,TRUE);
           $this->load->view('template/template-admin',$data);
           
       }
       
       public function result_filter_clie(){
           $id_tclie = $this->input->post('id_tclie',TRUE);
           $estado_clie = $this->input->post('estado_clie',TRUE);
           //Guardo los valores en sesion flash para que esten disponibles si se quiere imprimir el pdf
           $this->session->set_flashdata('id_tclie', $id_tclie);
           $this->session->set_flashdata('estado_clie', $estado_clie);
           $data['lista_clie'] = $this->cliente_m->list_filter_clie($id_tclie, $estado_clie);
           $this->load->view('clientes/v_list_clie',$data);
       }
       
          

          
    
}//Fin de la Clase Clientes